#ifndef MAINSCENEWIDGET_H
#define MAINSCENEWIDGET_H
#include "QD3D/QD3DWidget.h"
#include "ReconstructProcess.h"
#include "CameraInterface.h"
#include "OpenNIContextManager.h"


class MainSceneWidget : public QD3DWidget
{
	Q_OBJECT

public:
	MainSceneWidget (int argc, char *argv[], QWidget *parent = NULL);
	virtual ~MainSceneWidget ();

protected:
	virtual void initializeD3D ();

	virtual void paintD3D ();

	virtual void resizeD3D (int width, int height);

	virtual void cleanD3D ();

	void mousePressEvent (QMouseEvent * e);

	void mouseMoveEvent (QMouseEvent * e);

	void mouseReleaseEvent (QMouseEvent * e);

	void wheelEvent (QWheelEvent * e);

	void keyPressEvent (QKeyEvent * e);

	void keyReleaseEvent (QKeyEvent * e);

private:
	ReconstructProcess _reconstructProcess;
	OpenNIContextManager _contextManager;

	void _parseCommandLineArgs (int argc, char *argv[]);

};

#endif // MAINSCENEWIDGET_H
